post /cloudextensions
Create Cloud Extension (createCloudExtension)
Creating a Cloud Extension deploys Velostrata Cloud Edge nodes, A and B. These are placed in an Availability Set in Azure or Availability Zones in AWS. To allow flexibility in deployment and enable you to deploy a CE with a size that corresponds to the intended activity, you can select whether to add a small or large CE.
Consumes
This API call consumes the following media types via the Content-Type request header:
- application/json
Request body
createCloudExtensionRequest CreateCloudExtensionRequest (required)
Body Parameter — Create Cloud Extension request
Note: Use the relevant structure depending on whether you are creating a Cloud Extension in AWS. Azure, or GCP.
CreateCloudExtensionRequest
_type |
String AWS, Azure or GCP Cloud Extension Enum: CreateAwsCloudExtensionRequest CreateAzureCloudExtensionRequest CreateGcpCloudExtensionRequest |
CreateAwsCloudExtensionRequest
cloudCredentials |
CredentialsId
|
||||||||
ceSize (optional) |
CeSize Cloud Extension Size - Large or Small |
||||||||
dataCenterId |
String vSphere Datacenter ID |
||||||||
name |
String Cloud Extension name |
||||||||
workloadDefaultSubnetId |
String Default network subnet for workload VMs |
||||||||
licenseType |
LicenseType License TypeVelostrataIssued or Marketplace. |
||||||||
_type |
String Enum: CreateAwsCloudExtensionRequest |
||||||||
region |
String AWS region |
||||||||
vpcId |
String AWS Virtual Public Cloud IP |
||||||||
s3IamRole |
String IAM role for Cloud Edge instances |
||||||||
workloadDefaultSecurityGroupId |
String Default network security group for workload VMs |
||||||||
primaryFrontendSubnetId |
String Network subnet for primary Cloud Edge node (Node A) |
||||||||
secondaryFrontendSubnetId |
String Network subnet for secondary Cloud Edge node (Node B) |
||||||||
tenancyType |
TenancyType TenancyType - Default or DedicatedInstances. |
||||||||
infraSecurityGroupIds |
array[String] Network security group for Cloud Edge instances |
||||||||
proxy (optional) |
ProxyConfiguration
|
CreateAzureCloudExtensionRequest
cloudCredentials |
CredentialsId
|
||||||||
ceSize (optional) |
CeSize Cloud Extension Size - Large or Small |
||||||||
dataCenterId |
String vSphere Datacenter ID |
||||||||
name |
String Cloud Extension name |
||||||||
workloadDefaultSubnetId |
String Default network subnet for workload VMs |
||||||||
licenseType |
LicenseType License Type - VelostrataIssued or Marketplace. |
||||||||
_type |
String Enum: CreateAzureCloudExtensionRequest |
||||||||
networkSecurityGroupId |
String Network security group for Cloud Edge instances |
||||||||
subnetId |
String Azure subnet ID |
||||||||
workloadDefaultSecurityGroupId |
String Default network security group for workload VMs |
||||||||
location |
String Azure location |
||||||||
workloadDefaultResourceGroup (optional) |
String Default Resource Group for workload VMs |
||||||||
proxy (optional) |
ProxyConfiguration
|
CreateGcpCloudExtensionRequest
cloudCredentials |
CredentialsId
|
||||||||
ceSize (optional) |
CeSize Cloud Extension Size - Large or Small |
||||||||
dataCenterId |
String vSphere Datacenter ID |
||||||||
name |
String Cloud Extension name |
||||||||
workloadDefaultSubnetId |
String Default network subnet for workload VMs |
||||||||
licenseType |
LicenseType License Type - VelostrataIssued or Marketplace. |
||||||||
_type |
String Enum: CreateGcpCloudExtensionRequest |
||||||||
region |
String GCP region |
||||||||
networkName (optional) |
StringVPC network |
||||||||
primaryFrontendZone |
String Zone for primary Cloud Edge node (Node A) |
||||||||
secondaryFrontendZone |
String Zone for secondary Cloud Edge node (Node B) |
||||||||
primaryFrontendSubnetId |
String Network subnet for primary Cloud Edge node (Node A) |
||||||||
secondaryFrontendSubnetId |
String Network subnet for secondary Cloud Edge node (Node B) |
||||||||
infraNetworkTags (optional) |
array[String] |
||||||||
workloadDefaultNetworkTags (optional) |
array[String] |
||||||||
proxy (optional) |
ProxyConfiguration
|
Return type
TaskId
value (optional) |
String Entity ID |
_type |
String Task ID Enum: TaskId |
AWS Example data
Content-Type: application/json
{
"cloudCredentials": {
"value": "awsCreds",
"_type": "CredentialsId"
},
"ceSize": "Large",
"dataCenterId": "datacenter-2",
"name": "datacenter-2_vpc-1410ff71_1519303013_7jp",
"workloadDefaultSecurityGroupId": "sg-48539e2d",
"workloadDefaultSubnetId": "subnet-c1484887",
"licenseType": "VelostrataIssued",
"_type": "CreateAwsCloudExtensionRequest",
"proxy": {
"host": "123.34.56.67",
"port": 3128,
"useForData": false
}
"customTags": [],
"region": "eu-west-1",
"vpcId": "vpc-1410ff71",
"s3IamRole": "arn:aws:iam::965351925530:instance-profile/S3IamRole",
"primaryFrontendSubnetId": "subnet-c1484887",
"secondaryFrontendSubnetId": "subnet-c1484887",
"tenancyType": "Default",
"infraSecurityGroupIds": ["sg-48539e2d"]
}
Azure Example data
Content-Type: application/json
{
"cloudCredentials": {
"value": "azureCreds",
"_type": "CredentialsId"
},
"ceSize": "Large",
"dataCenterId": "datacenter-2",
"name": "datacenter-2_1519343160_DrQ",
"workloadDefaultSecurityGroupId": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/Velostrata-Example/providers/Microsoft.Network/networkSecurityGroups/AzureMain-NEurope-Example",
"workloadDefaultSubnetId": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/Velostrata-Example/providers/Microsoft.Network/virtualNetworks/example-vnet/subnets/Velostrata-Example",
"licenseType": "VelostrataIssued",
"_type": "CreateAzureCloudExtensionRequest",
"location": "northeurope",
"workloadDefaultResourceGroup": "/subscriptions/a0123bc4-d567-89e1-0111-f21g31h4i151/resourceGroups/rg123456789-UuI",
}
GCP Example data
Content-Type: application/json
{
"cloudCredentials": {
"value": "gcp_datacenter-2_1508315847_GES",
"_type": "CredentialsId"
},
"ceSize": "Small",
"dataCenterId": "datacenter-2",
"name": "datacenter-2_1519343160_DrQ",
"workloadDefaultSubnetId": "https://www.googleapis.com/compute/v1/projects/velosdev/regions/europe-west1/subnetworks/default",
"licenseType": "VelostrataIssued",
"region": "europe-west1",
"networkName": "https://www.googleapis.com/compute/v1/projects/velosdev/global/networks/default",
"primaryFrontendZone": "europe-west1-d",
"secondaryFrontendZone": "europe-west1-d",
"primaryFrontendSubnetId": "https://www.googleapis.com/compute/v1/projects/velosdev/regions/europe-west1/subnetworks/default",
"secondaryFrontendSubnetId": "https://www.googleapis.com/compute/v1/projects/velosdev/regions/europe-west1/subnetworks/default",
"infraNetworkTags": [],
"workloadDefaultNetworkTags": ["velostrata"],
"serviceAccount": "velosdev1@velosdev.iam.gserviceaccount.com",
"_type": "CreateGcpCloudExtensionRequest",
}
Produces
This API call produces the following media types according to the Accept request header; the media type will be conveyed by the Content-Type response header.
- application/json
Responses
201
Created TaskId
value (optional) |
String Entity ID |
_type |
String Task ID Enum: TaskId |
Default
Error ErrorInfo
errorCode (optional) |
String |
url(optional) |
String |
message (optional) |
String |